package com.citycloud.ccuap.tc.admin.projectrole;

import com.citycloud.ccuap.commons.json.CheckedTreeNode;
import com.citycloud.ccuap.commons.sys.entity.SysRole;
import com.citycloud.ccuap.framework.service.mybatis.IMybatisService;

import java.io.InputStream;
import java.util.List;
import java.util.Map;

/**
 * 角色信息业务处理接口
 * @author sufeng
 *
 */

public interface IProjectRoleService extends IMybatisService<SysRole, Long> {

    void updateLinkedDatagroup(Long roleId, List<String> datagroups);

	List<CheckedTreeNode> findAllProjectFunNodeTree(Long roleId, Long projectId);

	void grantFunction(Long roleId, List<String> funIdList);

	Map<String,List<String>> grantRoleToUsers(Long roleId, List<Long> userIdList, List<Long> deptIdList, Long projectId, String data, String ip, List<Long> addUserIds, List<Long> delUserIds);

	Map<String,List<String>> grantUsers(RoleUserDTO roleUserDTO, String data, String ip, Long projectId);


    void importRole(InputStream is, Long projectId,String userNo);
}